此說明工具:
Visual Studio版本為 community 2019
git版本為 gitlab
情境 :
#假設同仁有程式需要commit時, 將gitlab上的程式提取(pull)下來時,發生了衝突該怎麼處理
Git上的TestClass.cs 程式為
Step1. 寫完程式時, 要將程式commit到git上,先做提取的動作後出現了衝突
這代表著有同仁更新上去的程式,但你本機端有更改過他改過的地方,代表你的版本是舊的,所以報衝突。
Step2. 這時你先按全部認可並推送 , 將你本地端commit上去到本機端
Step3. 推送到本機端的時候會發生錯誤,因為與git端的程式不同
Step4. 這時先按同步
Step5. 會出現像這樣的畫面
Step6. 會出現差異的程式 這邊的按鈕都可以選,看你的情境較符合哪個,
A.遠端就會把你這次commit的程式跟遠端的git紀錄作比對
B.本機端就會把你這次commit的程式跟本機原本git的紀錄作比對
Step7. 按下合併後
Step8. 會出現以下的畫面
可以選擇上述圖片的操作,目前這邊接下來的操作為選擇接受遠端
(如果是自己手動合併的話, 記得按右上角的認可合併)
Step9. 選擇接受遠端操作後,會發現變更就會多一筆你剛剛修改過的程式紀錄
因為我剛剛選擇了接受遠端 , 所以下方程式變為git上版本的程式
Step10. 在一次commit
**Step11.**這時候看一下同步
Step12. 這時候就解決衝突了
Step13. commit成功 ,
剛Step2. commit到你本機端的紀錄也會在上面 測試三為最後將程式合併的紀錄
--以上是VS commit到git有衝突的處理--